//
//  ArrayDataSource.m
//  27-ArrayDataSource
//
//  Created by dllo on 16/8/19.
//  Copyright © 2016年 dllo. All rights reserved.
//

#import "ArrayDataSource.h"

@interface ArrayDataSource ()
@property (nonatomic,copy) NSString *reuse;
@property (nonatomic,strong) NSArray *dataSource;
@property (nonatomic,copy) ConfigCell configCell;
@end

@implementation ArrayDataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    return _dataSource.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:_reuse];
    id model = _dataSource[indexPath.row];
    self.configCell(cell,model);
//    cell.textLabel.text = _dataSource[indexPath.row];
    return cell;
}

- (instancetype)initWithTableViewCellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array configCell:(ConfigCell) configCell
{
    self = [super init];
    if (self) {
        _reuse = reuse;
        _dataSource = array;
        _configCell = configCell;
    }
    return self;
}

+ (ArrayDataSource *)arrayDataSourceWithTableViewCellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array configCell:(ConfigCell) configCell
{
    return [[ArrayDataSource alloc] initWithTableViewCellReuse:reuse arrayDataSource:array configCell:configCell];
}

//- (instancetype)initWithTableViewcellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array {
//    self = [super init];
//    if (self) {
//        _reuse = reuse;
//        _dataSource = array;
//    }
//    return self;
//}
//+ (ArrayDataSource *)arrayDataSourceWithTableViewCellReuse:(NSString *)reuse arrayDataSource:(NSArray *)array {
//    return [[self alloc] initWithTableViewcellReuse:reuse arrayDataSource:array];
//}
//- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
//    return _dataSource.count;
//}
//- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
//    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:_reuse];
//    cell.textLabel.text = _dataSource[indexPath.row];
//    return cell;
//}
@end
